1920B - Summation Game - CodeForces Solution


games greedy math sortings *1100

Please click on ads to support us..

C++ Code:

#include <bits/stdc++.h>

using namespace std;

void solve(){
    int n, k ,x;
    cin >> n >> k >> x;
    int a[n];
    for (int i = 0; i < n ; i++){
        cin >> a[i];
    }
    sort ( a, a + n);
    for (int i = 1; i < n ; i++){
        a[i] += a[i-1];
    }
    int ans = -a[n-1];
    for (int i = k; i >= 0 ; i--){
        if ( i == n){
            ans = max(ans,0);
        }else{
            if (n - i - x - 1 < 0){
                ans = max(ans, -a[n-i-1]);
            }else{
                ans = max(ans,2 *a[n-i-x-1]- a[n - i - 1]);
            }
        }
    }
    cout << ans << endl;
}

int main(){
    int t;
    cin >> t;
    while(t--){
        solve();
    }
}


Comments

Submit
0 Comments
More Questions

1622B - Berland Music
1139B - Chocolates
1371A - Magical Sticks
1253A - Single Push
706B - Interesting drink
1265A - Beautiful String
214A - System of Equations
287A - IQ Test
1108A - Two distinct points
1064A - Make a triangle
1245C - Constanze's Machine
1005A - Tanya and Stairways
1663F - In Every Generation
1108B - Divisors of Two Integers
1175A - From Hero to Zero
1141A - Game 23
1401B - Ternary Sequence
598A - Tricky Sum
519A - A and B and Chess
725B - Food on the Plane
154B - Colliders
127B - Canvas Frames
107B - Basketball Team
245A - System Administrator
698A - Vacations
1216B - Shooting
368B - Sereja and Suffixes
1665C - Tree Infection
1665D - GCD Guess
29A - Spit Problem